﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;

namespace OWE.Core.Data
{
    /// <summary>
    /// Repository
    /// </summary>
    public partial interface IRepository<T> where T : BaseEntity
    {

        T GetById(int id);
        void Insert(T entity);
        void Update(T entity);
        void Delete(T entity);

        IEnumerable<T> GetList();

        IEnumerable<T> ExecWithStoreProcedure(string query, params object[] parameters);
    }
}
